package com.example.demo.algorithm;

import java.util.HashSet;

public class PxAlg {

    public static void main(String[] args) {
        String str = "pwwkew";
        System.out.println(lengthOfLongestSubstring(str));
    }

    // 去除重复的数，在原来的数组中
    private static void test(){
        int[] number = {1,2,3,4,5,7,8,9,5,3,6,7};

    }
    /**
     * 给定一个字符串，请你找出其中不含有重复字符的 最长子串 的长度。
     * 输入: "abcabcbb"
     * 输出: 3
     * 解释: 因为无重复字符的最长子串是 "abc"，所以其长度为 3。
     */
    private static int lengthOfLongestSubstring(String str) {
        char[] num = str.toCharArray();
        HashSet<Character> hashSet = new HashSet<>();
        int number = 0;
        if (num.length == 1){
            return num.length;
        }else {
            for (int i = 0; i < num.length; i++) {
                for (int j = i; j < num.length; j++) {
                    if (!hashSet.contains(num[j])) {
                        hashSet.add(num[j]);
                    } else {
                        number = hashSet.size();
                        System.out.println(hashSet.toString());
                        hashSet.clear();
                        break;
                    }
                }
            }
            return number;
        }
    }
}
